/**
 * \file placement.cpp
 * \brief Placement des unites a la creation de la partie
 * \author ARTUR Vincent
 * \author LAPERDRIX Pierre
 * \version 1.0
 */


#include "placement.h"

using namespace std;

Placement::Placement(){}

Placement::~Placement(){}

int* Placement::placer(int numJoueur, int nbJoueur, int taille){
	int* res = new int[2];
	int quart = taille/4;
	switch(nbJoueur){
	case 2: 
		if (numJoueur==0){
			res[0]= quart; res[1]= quart;
		} else {
			res[0]= 3 * quart; res[1]= 3 * quart;
		}
		break;
	case 3 :
		switch(numJoueur){
			case 0 :
				res[0]= quart; res[1]= quart;
				break;
			case 1 :
				res[0]= 2 * quart; res[1]= 2 * quart;
				break;
			default:
				res[0]=3 * quart; res[1]= 3 * quart;
				break;
			
		}
		break;
	default :
		switch(numJoueur){
			case 0:
				res[0]=quart; res[1]=quart;
				break;
			case 1:
				res[0]=3 * quart; res[1]=quart;
				break;
			case 2:
				res[0]= quart; res[1]= 3 * quart;
				break;
			case 3:
				res[0]= 3 * quart; res[1]= 3 * quart;
				break;
			default:
				res[0]= 2 * quart; res[1]= 2 * quart;
				break;
		}
		break;
	}

	return res;
}

Placement* Placement_new(){ return new Placement();}
void Placement_delete(Placement* plac){ delete plac;}
int* Placement_placer(Placement* plac,int numJoueur, int nbJoueur, int taille) { return plac->placer(numJoueur,nbJoueur,taille);}